The present invention relates to the field of thin provisioning environments and more particularly to determination of a “representation capacity” to be used in provisioning storage space in a thin provisioning environment. A thin provisioning environment (that is, a thin provisioning system that includes one or more computers) uses virtualization technology to give an appearance of having a greater amount of physical resources available than the amount of physical resources that are actually available. If a thin provisioning system always has sufficient physical resources to simultaneously support all of the virtualized resources, then it is not thin provisioned. The term “thin provisioning” often relates to storage space for data storage, but it can more broadly refer to an allocation scheme for any physical resource (now known or to be developed in the future) in a computer system.
Some shared storage environments (also called “storage-host-client systems or “S-H-C systems”) apply thin provisioning as a way of optimizing utilization of available storage. In some known thin provisioning shared storage systems, the thin provisioning relies on on-demand allocation of blocks of data versus the traditional method of allocating all the blocks up front. Applications that draw on the thin provision shared storage environment tend to reserve more data for future requirements, but at any point of time all allocated space across all applications will not typically be actively in use. A thin provision shared storage environment typically maintains a list of virtual blocks allocated for the application while the actual physical block(s) are assigned to the virtual block(s) only when a write operation is performed.
In conventional thin provisioning environments, it is understood that the provisioning should provide sufficient storage space so that the storage space required by thin provisioning operations does not exceed the space that has been provisioned. Typically an administrator determines, before thin provisioning system operations start, an over-provisioning ratio. Based on an “over-provisioning ratio,” the administrator typically configures “representation capacity” (or virtual) for a thin provisioned system. In a thin provision system, the amount of real data storage capacity will be less than total representation capacity. The over-provisioning ratio is the ratio between the representation capacity and the real capacity. The over-provisioning ratio, and its associated representation capacity, is typically chosen by the administrator based on the administrator's experience and/or previous behavior of the thin provisioning system. During normal thin provisioning operations, an application usually is allowed to allocate data storage space only as long as representation capacity is available.